/*
  积分币
  题目描述
    年底了，王老师决定根据小明的期末考试成绩得分，给小明发放对应的积分，小明可以用得到的积分兑换礼品。
    现在王老师手上有 N 种不同面值的积分币，每种积分币有无限多个。
    为了方便携带，王老师希望带尽量少的积分币，但是因为小明的成绩目前还不确定，
    所以需要用这些积分币组合出从最低分 1 分到满分 X 分之间的任意值。
  输入描述
    第一行两个数 X, N，以下 N 个数，表示每种积分币的面值。
  输出描述
    最少需要携带的积分币个数，如果无解输出 -1。
  样例1
    输入
      20 4
      1 2 5 10
    输出
      5
  提示
    对于 30% 的数据，满足 N ≤ 3，X ≤ 20；
    对于 100% 的数据，满足 N ≤ 10，X ≤ 10^3。
*/